prsr_lib/ip_cnvrt.c:454 IPPolygonStruct *IritTrimSrf2Polygons(TrimSrfStruct *TrimSrf, int FourPerFlat, RealType FineNess, int ComputeUV, int Optimal)
TrimSrf: To approximate using polygons.
FourPerFlat: If TRUE, four triangle per flat surface patch are created, otherwise only two.
FineNess: Fineness control on polygonal approximation. The larger this number is the finer the approximation becomes. 10 is a good compromise when Optimal is FALSE.
ComputeUV: Do we want UV parameter values with the vertices of the triangles?
Optimal: If FALSE (0) then parametric space of TrimSrf is sampled
uniformely. Otherwise: If the tenths digit of Optimal is equal to 1. Subdivide the surface alternatively in U and V. 2. Subdivide the surface in the direction that minimizes the error of the approximation If the units digit of Optimal is equal to 0. No real error analysis. The fastest way. 1. Use curvature surface analysis to decide where to subdivide. Much slower than 0. 2. Use a bilinear surface fit to estimate error. Somewhat slower than 0. 3. Combine 1 and 2 for a bilinar fit error measure with curvature analysis. Very slow.